using System;
using System.Collections.Generic;
using System.Text;

using MemberMgr.Data.Base;

namespace MemberMgr.Data.ManagerObjects
{
    public interface IManagerFactory
    {
		// Get Methods
		ItConsumptionDetailManager GettConsumptionDetailManager();
		ItConsumptionDetailManager GettConsumptionDetailManager(INHibernateSession session);
		ItConsumptionMasterManager GettConsumptionMasterManager();
		ItConsumptionMasterManager GettConsumptionMasterManager(INHibernateSession session);
		ItMemberManager GettMemberManager();
		ItMemberManager GettMemberManager(INHibernateSession session);
		ItMenuManager GettMenuManager();
		ItMenuManager GettMenuManager(INHibernateSession session);
		ItNoteManager GettNoteManager();
		ItNoteManager GettNoteManager(INHibernateSession session);
		ItProductManager GettProductManager();
		ItProductManager GettProductManager(INHibernateSession session);
		ItProductInlogManager GettProductInlogManager();
		ItProductInlogManager GettProductInlogManager(INHibernateSession session);
		ItProductOutlogManager GettProductOutlogManager();
		ItProductOutlogManager GettProductOutlogManager(INHibernateSession session);
		ItRightManager GettRightManager();
		ItRightManager GettRightManager(INHibernateSession session);
		ItRoleManager GettRoleManager();
		ItRoleManager GettRoleManager(INHibernateSession session);
		ItShopManager GettShopManager();
		ItShopManager GettShopManager(INHibernateSession session);
		ItSystemManager GettSystemManager();
		ItSystemManager GettSystemManager(INHibernateSession session);
		ItUserManager GettUserManager();
		ItUserManager GettUserManager(INHibernateSession session);
    }

    public class ManagerFactory : IManagerFactory
    {
        #region Constructors

        public ManagerFactory()
        {
        }

        #endregion

        #region Get Methods

		public ItConsumptionDetailManager GettConsumptionDetailManager()
        {
            return new tConsumptionDetailManager();
        }
		public ItConsumptionDetailManager GettConsumptionDetailManager(INHibernateSession session)
        {
            return new tConsumptionDetailManager(session);
        }
		public ItConsumptionMasterManager GettConsumptionMasterManager()
        {
            return new tConsumptionMasterManager();
        }
		public ItConsumptionMasterManager GettConsumptionMasterManager(INHibernateSession session)
        {
            return new tConsumptionMasterManager(session);
        }
		public ItMemberManager GettMemberManager()
        {
            return new tMemberManager();
        }
		public ItMemberManager GettMemberManager(INHibernateSession session)
        {
            return new tMemberManager(session);
        }
		public ItMenuManager GettMenuManager()
        {
            return new tMenuManager();
        }
		public ItMenuManager GettMenuManager(INHibernateSession session)
        {
            return new tMenuManager(session);
        }
		public ItNoteManager GettNoteManager()
        {
            return new tNoteManager();
        }
		public ItNoteManager GettNoteManager(INHibernateSession session)
        {
            return new tNoteManager(session);
        }
		public ItProductManager GettProductManager()
        {
            return new tProductManager();
        }
		public ItProductManager GettProductManager(INHibernateSession session)
        {
            return new tProductManager(session);
        }
		public ItProductInlogManager GettProductInlogManager()
        {
            return new tProductInlogManager();
        }
		public ItProductInlogManager GettProductInlogManager(INHibernateSession session)
        {
            return new tProductInlogManager(session);
        }
		public ItProductOutlogManager GettProductOutlogManager()
        {
            return new tProductOutlogManager();
        }
		public ItProductOutlogManager GettProductOutlogManager(INHibernateSession session)
        {
            return new tProductOutlogManager(session);
        }
		public ItRightManager GettRightManager()
        {
            return new tRightManager();
        }
		public ItRightManager GettRightManager(INHibernateSession session)
        {
            return new tRightManager(session);
        }
		public ItRoleManager GettRoleManager()
        {
            return new tRoleManager();
        }
		public ItRoleManager GettRoleManager(INHibernateSession session)
        {
            return new tRoleManager(session);
        }
		public ItShopManager GettShopManager()
        {
            return new tShopManager();
        }
		public ItShopManager GettShopManager(INHibernateSession session)
        {
            return new tShopManager(session);
        }
		public ItSystemManager GettSystemManager()
        {
            return new tSystemManager();
        }
		public ItSystemManager GettSystemManager(INHibernateSession session)
        {
            return new tSystemManager(session);
        }
		public ItUserManager GettUserManager()
        {
            return new tUserManager();
        }
		public ItUserManager GettUserManager(INHibernateSession session)
        {
            return new tUserManager(session);
        }
        
        #endregion
    }
}
